iT邦幫忙

2023 iThome 鐵人賽

DAY 13
0
SideProject30

Hugo your Blog and Host your Podcast. 系列 第 13

AWS IAM / Less privileged self-replication.

  • 分享至 

  • xImage
  •  

原來是分身攻擊啊

  • 現在 Hugo/public 資料夾下的內容很忙碌,一下要 push 到 github 一下又要上傳到 S3 bucket,我們希望可以把這些通通串起來,而且用比較複雜的方法
  • 我們可以使用 git & aws cli 在本機分別把兩件事做好做完,但懶惰使人進步,我希望可以只用單一的 git push 就能觸發後續的動作,此時可以使用 Github Actions 來達成這個目的
  • 在此之前,要先給 Github repo 一個 AWS 分身權限 IAM user

該怎麼做

  • 在 IAM 選擇 Users/ Create user
    https://ithelp.ithome.com.tw/upload/images/20230928/20152944iHk9nAwfdW.png
  • 輸入 User name,例如 github_upload_s3,並勾選 Next
    https://ithelp.ithome.com.tw/upload/images/20230928/20152944eUM1nuEimy.png
  • 選擇 Attach Policies Directly,並搜尋關鍵字 S3,將 S3FullAccess 勾選起來並完成
    https://ithelp.ithome.com.tw/upload/images/20230928/20152944nl7AUC0RQa.png
  • 完成後點擊 Create access key
    https://ithelp.ithome.com.tw/upload/images/20230928/20152944P4hqQqvAUM.png
  • 你可以紀錄 Access key ID, Secret 在安全的地方,或是下載 .csv 檔案,儲存在本機位置
    https://ithelp.ithome.com.tw/upload/images/20230928/20152944jmf4ruwEOQ.png
  • 請不要把 Access key ID, Secret 放在公開的地方,例如 Github repo,就算是 private repo 也不建議存放,且 Github 偵測到該內容也會發出警告

其他延伸

  • IAM 用來管理 AWS 資源的存取權限,我們可以給不同分身(第三方服務、應用程式等等)不同的權限,限縮可能被存取的範圍
  • 一旦 IAM 身分被假冒使用,受影顯得資源有限,也可以從 IAM 端將該身分停用,避免被繼續濫用
  • IAM 的管理方式有更多細緻的處理,除了 user groups/ users/ roles,對應 Policy 的允許或禁止方式也相當值得研究

外出取材


上一篇
Git init / Push "public" to "private" hub.
下一篇
Github Actions / Take On Me. Take Actions.
系列文
Hugo your Blog and Host your Podcast. 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言